Many of us have experienced being stopped by a police officer at least once, whether for a minor infraction or a more serious reason. Those who haven’t yet been stopped might consider themselves particularly responsible drivers. To better understand the factors leading to police stops and subsequent outcomes, such as arrests, our team chose to analyze this topic. Through our analysis, we aim to explore patterns and factors associated with police stops, providing insight into the circumstances and potential biases that contribute to these events.
The Chicago Police Stops dataset, a part of the Stanford Open Policing Project, offers an in-depth look into police stop practices in Chicago, with a focus on geographic, racial, and demographic patterns. As part of Stanford’s broader initiative to document public interactions with police, this dataset presents a repository of data detailing various aspects of police stops. It captures information on both individuals stopped and the officers involved, recording characteristics such as race, age, gender, and outcomes of the stops, including searches, arrests, and the nature of the violations. The dataset provides a foundation to explore how factors like race, gender, type of violation, and officer demographics may impact the likelihood of being stopped, searched, or arrested during these encounters.
This dataset comes from the Stanford Open Policing Project [1]. The variables in the dataset include:
| Variable | Definition |
|---|---|
| location | The location where the stop occurred |
| lat | The latitude of location |
| lng | The longitude of location |
| subject_race | The race of the person stopped |
| subject_age | The age of the person stopped |
| subject_gender | The gender of the person stopped |
| officer_race | The race of the officer conducting the stop |
| officer_age | The age of the officer |
| officer_gender | The gender of the officer stopping |
| search_made | Whether a search was conducted during the stop |
| arrest_made | Whether an arrest was made during the stop |
| violation | The violation that prompted the stop |
The SMART framework was popularized by George T. Doran in a 1981 paper in Management Review. And we use this framework in our analysis to set goals that are clear, attainable, and meaningful.
Specific: The objective should be clear and state who will do what
Measurable: The objective should include how the action will be measured
Achievable: The objective should be realistic and attainable
Relevant: The objective should make sense and fit the purpose
Time-bound: The objective should include a timeline for expected results [2]
We have leverage the understanding of what a SMART question is and poured it into the following questions to be answered as part of our analysis;
1) How do the subject’s race and the officer’s race influence the likelihood of arrest during police stops in Chicago, as observed in the dataset ?
2) How does the officer’s gender influence the likelihood of arresting individuals of different races during police stops in Chicago, as measured by the association between officer gender and subject race in the arrest dataset?
In the scholarly realm of data analysis, Exploratory Data Analysis (EDA) stands as a pivotal phase, akin to the preliminary investigations conducted by a seasoned researcher before embarking on a comprehensive study. Picture this phase as the initial survey of an unexplored scientific landscape, where the analyst endeavors to unearth latent patterns, identify anomalies, test hypotheses, and validate assumptions through a meticulous examination of summary statistics and graphical representations.
Exploratory Data Analysis refers to the critical process of performing initial investigations on data so as to discover patterns,to spot anomalies,to test hypothesis and to check assumptions with the help of summary statistics and graphical representations.[3]
The main purpose of EDA is to help look at data before making any assumptions. It can help identify obvious errors, as well as better understand patterns within the data, detect outliers or anomalous events, find interesting relations among the variables.[4]
Moreover, EDA validates assumptions, a process analogous to literature review and theoretical grounding in academic research. It ensures that the initial assumptions made about the dataset withstand scholarly scrutiny, providing a robust foundation for subsequent analyses.
data=read.csv("il_chicago_2023_01_26.csv")
head(data, 5)
## location lat lng subject_age
## 1 700 LINCOLN W 41.87440 -88.21669 23
## 2 <NA> NA NA 23
## 3 0 NORTHWEST HWY & HILLSIDE RD S 42.14670 -88.11955 38
## 4 108 LAMON AVE N 41.88207 -87.74783 35
## 5 3451 177TH ST W 41.56799 -87.70103 20
## subject_race subject_sex officer_age officer_race officer_sex
## 1 African Americans male NA Caucasian male
## 2 Hispanic / Latino male NA Caucasian male
## 3 Caucasian female NA <NA> <NA>
## 4 African Americans male 34 African Americans male
## 5 African Americans male NA <NA> <NA>
## type violation arrest_made
## 1 vehicular DRIVING ON SUSPENDED LICENSE TRUE
## 2 vehicular DRIVING/NEVER ISSUED LICENSE TRUE
## 3 vehicular DRIVING ON SUSPENDED LICENSE TRUE
## 4 vehicular IVC - FAIL TO STOP/SIGNAL CROSSWALK TRUE
## 5 vehicular IVC - DRIVING 15-20 MPH ABOVE SPEED LIMIT TRUE
str(data)
## 'data.frame': 1048575 obs. of 12 variables:
## $ location : chr "700 LINCOLN W" NA "0 NORTHWEST HWY & HILLSIDE RD S" "108 LAMON AVE N" ...
## $ lat : num 41.9 NA 42.1 41.9 41.6 ...
## $ lng : num -88.2 NA -88.1 -87.7 -87.7 ...
## $ subject_age : int 23 23 38 35 20 22 63 31 26 22 ...
## $ subject_race: chr "African Americans" "Hispanic / Latino" "Caucasian" "African Americans" ...
## $ subject_sex : chr "male" "male" "female" "male" ...
## $ officer_age : int NA NA NA 34 NA NA NA NA 41 NA ...
## $ officer_race: chr "Caucasian" "Caucasian" NA "African Americans" ...
## $ officer_sex : chr "male" "male" NA "male" ...
## $ type : chr "vehicular" "vehicular" "vehicular" "vehicular" ...
## $ violation : chr "DRIVING ON SUSPENDED LICENSE" "DRIVING/NEVER ISSUED LICENSE" "DRIVING ON SUSPENDED LICENSE" "IVC - FAIL TO STOP/SIGNAL CROSSWALK" ...
## $ arrest_made : logi TRUE TRUE TRUE TRUE TRUE TRUE ...
xkablesummary(data, title = "Summary of Dataset")
| location | lat | lng | subject_age | subject_race | subject_sex | officer_age | officer_race | officer_sex | type | violation | arrest_made | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Min | Length:1048575 | Min. :41.34 | Min. :-88.45 | Min. : 10.0 | Length:1048575 | Length:1048575 | Min. :11.0 | Length:1048575 | Length:1048575 | Length:1048575 | Length:1048575 | Mode:logical |
| Q1 | Class :character | 1st Qu.:41.77 | 1st Qu.:-87.72 | 1st Qu.: 25.0 | Class :character | Class :character | 1st Qu.:34.0 | Class :character | Class :character | Class :character | Class :character | TRUE:212249 |
| Median | Mode :character | Median :41.87 | Median :-87.66 | Median : 32.0 | Mode :character | Mode :character | Median :40.0 | Mode :character | Mode :character | Mode :character | Mode :character | NA’s:836326 |
| Mean | NA | Mean :41.85 | Mean :-87.68 | Mean : 34.7 | NA | NA | Mean :40.5 | NA | NA | NA | NA | NA |
| Q3 | NA | 3rd Qu.:41.91 | 3rd Qu.:-87.63 | 3rd Qu.: 42.0 | NA | NA | 3rd Qu.:46.0 | NA | NA | NA | NA | NA |
| Max | NA | Max. :42.45 | Max. :-87.00 | Max. :100.0 | NA | NA | Max. :69.0 | NA | NA | NA | NA | NA |
| NA | NA | NA’s :102971 | NA’s :102971 | NA’s :634728 | NA | NA | NA’s :988512 | NA | NA | NA | NA | NA |
data2 <- data[!(data$subject_race %in% c("unknown", "other") | data$officer_race %in% c("unknown", "other")), ]
We removed “unknown” and “other” races from subject_race and officer_race.
nrow(data2)
## [1] 1040987
colSums(is.na(data2))
## location lat lng subject_age subject_race subject_sex
## 70161 100845 100845 631413 626423 383
## officer_age officer_race officer_sex type violation arrest_made
## 981544 261440 261440 1 1 833012
#removing missing values
cleaned_data<-na.omit(data2)
After we removed the null values, we glimpse into the structure and summary of dataset.
str(cleaned_data)
## 'data.frame': 49819 obs. of 12 variables:
## $ location : chr "108 LAMON AVE N" "430 STATE ST N" "4225 ARMITAGE AVE W" "204 144TH W" ...
## $ lat : num 41.9 41.9 41.9 41.6 42 ...
## $ lng : num -87.7 -87.6 -87.7 -87.6 -87.8 ...
## $ subject_age : int 35 26 26 33 36 22 21 27 46 22 ...
## $ subject_race: chr "African Americans" "Caucasian" "Hispanic / Latino" "African Americans" ...
## $ subject_sex : chr "male" "female" "male" "male" ...
## $ officer_age : int 34 41 32 50 60 32 40 37 32 52 ...
## $ officer_race: chr "African Americans" "Caucasian" "Caucasian" "Caucasian" ...
## $ officer_sex : chr "male" "male" "male" "male" ...
## $ type : chr "vehicular" "vehicular" "vehicular" "vehicular" ...
## $ violation : chr "IVC - FAIL TO STOP/SIGNAL CROSSWALK" "OBSTRUCTION OF TRAFFIC BY NON-MOTORIST" "DRIVING ON SUSPENDED LICENSE" "DRIVING ON SUSPENDED LICENSE" ...
## $ arrest_made : logi TRUE TRUE TRUE TRUE TRUE TRUE ...
## - attr(*, "na.action")= 'omit' Named int [1:991168] 1 2 3 5 6 7 8 10 12 13 ...
## ..- attr(*, "names")= chr [1:991168] "1" "2" "3" "5" ...
xkablesummary(cleaned_data, title = "Summary of Cleaned Dataset")
| location | lat | lng | subject_age | subject_race | subject_sex | officer_age | officer_race | officer_sex | type | violation | arrest_made | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Min | Length:49819 | Min. :41.35 | Min. :-88.44 | Min. :17.00 | Length:49819 | Length:49819 | Min. :13.00 | Length:49819 | Length:49819 | Length:49819 | Length:49819 | Mode:logical |
| Q1 | Class :character | 1st Qu.:41.77 | 1st Qu.:-87.75 | 1st Qu.:24.00 | Class :character | Class :character | 1st Qu.:34.00 | Class :character | Class :character | Class :character | Class :character | TRUE:49819 |
| Median | Mode :character | Median :41.87 | Median :-87.71 | Median :30.00 | Mode :character | Mode :character | Median :38.00 | Mode :character | Mode :character | Mode :character | Mode :character | NA |
| Mean | NA | Mean :41.84 | Mean :-87.71 | Mean :32.45 | NA | NA | Mean :39.42 | NA | NA | NA | NA | NA |
| Q3 | NA | 3rd Qu.:41.91 | 3rd Qu.:-87.65 | 3rd Qu.:39.00 | NA | NA | 3rd Qu.:45.00 | NA | NA | NA | NA | NA |
| Max | NA | Max. :42.45 | Max. :-87.03 | Max. :92.00 | NA | NA | Max. :68.00 | NA | NA | NA | NA | NA |
Cross checking for null values in dataset.
colSums(is.na(cleaned_data))
## location lat lng subject_age subject_race subject_sex
## 0 0 0 0 0 0
## officer_age officer_race officer_sex type violation arrest_made
## 0 0 0 0 0 0
An outlier is a data point that significantly deviates from the majority of other data points in a dataset, and in Exploratory Data Analysis (EDA), outliers can significantly affect the interpretation of data by skewing visualizations, impacting statistical measures like the mean, and potentially misleading conclusions drawn from the analysis if not properly identified and handled. Outliers can be unusually high or low compared to the majority of the data points.[5]
In this analysis, we specifically focus on identifying outliers in the age groups of officers and subjects. By examining these outliers, we aim to ensure that our findings are robust and representative of the overall dataset, minimizing any undue influence from extreme values. This process strengthens the validity of our analysis by providing a more accurate portrayal of the data trends and relationships.
ggplot(cleaned_data, aes(x = subject_race, y = subject_age)) +
geom_boxplot(fill = "lightblue", color = "darkblue") +
labs(title = "Subject Age Distribution by Race", x = "Subject Race", y = "Subject Age") +
theme_minimal()
ggplot(cleaned_data, aes(x = officer_race, y = officer_age)) +
geom_boxplot(fill = "lightblue", color = "darkblue") +
labs(title = "Subject Age Distribution by Race", x = "Officer Race", y = "Officer Age") +
theme_minimal()
cleansubject_age=outlierKD2(cleaned_data,subject_age,rm=TRUE,qqplt = TRUE)
## Outliers identified: 557
## Proportion (%) of outliers: 1.1
## Mean of the outliers: 66.11
## Mean without removing outliers: 32.45
## Mean if we remove outliers: 32.07
## Outliers successfully removed
cleanofficer_age=outlierKD2(cleaned_data,officer_age,rm=TRUE,qqplt = TRUE)
## Outliers identified: 213
## Proportion (%) of outliers: 0.4
## Mean of the outliers: 61.91
## Mean without removing outliers: 39.42
## Mean if we remove outliers: 39.32
## Outliers successfully removed
‘outlierKD2’ has identified and removed outliers, but it did not actually drop the rows from the dataframe. The outlierKD2 function only returns a modified column but does not update the dataframe in place. We manually remove the rows that contain outliers from cleaned_data dataframe.
Q1_subject <- quantile(cleaned_data$subject_age, 0.25)
Q3_subject <- quantile(cleaned_data$subject_age, 0.75)
IQR_subject <- Q3_subject - Q1_subject
lower_bound_subject <- Q1_subject - 1.5 * IQR_subject
upper_bound_subject <- Q3_subject + 1.5 * IQR_subject
cleaned_data <- cleaned_data[cleaned_data$subject_age >= lower_bound_subject & cleaned_data$subject_age <= upper_bound_subject, ]
Q1_officer <- quantile(cleaned_data$officer_age, 0.25)
Q3_officer <- quantile(cleaned_data$officer_age, 0.75)
IQR_officer <- Q3_officer - Q1_officer
lower_bound_officer <- Q1_officer - 1.5 * IQR_officer
upper_bound_officer <- Q3_officer + 1.5 * IQR_officer
cleaned_data <- cleaned_data[cleaned_data$officer_age >= lower_bound_officer & cleaned_data$officer_age <= upper_bound_officer, ]
nrow(cleaned_data)
## [1] 49051
summary(cleaned_data$subject_age)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 17.00 24.00 30.00 32.06 38.00 61.00
summary(cleaned_data$officer_age)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 18.00 34.00 38.00 39.31 44.00 61.00
top_violations <- cleaned_data %>%
count(violation, sort = TRUE) %>%
top_n(10, n)
final_data <- cleaned_data %>%
filter(violation %in% top_violations$violation)
We filtered the dataset to retain records of top 10 violations.
str(final_data)
## 'data.frame': 31217 obs. of 12 variables:
## $ location : chr "430 STATE ST N" "4225 ARMITAGE AVE W" "204 144TH W" "6940 WINDSOR AVE W" ...
## $ lat : num 41.9 41.9 41.6 42 41.8 ...
## $ lng : num -87.6 -87.7 -87.6 -87.8 -87.7 ...
## $ subject_age : int 26 26 33 36 22 21 29 49 33 53 ...
## $ subject_race: chr "Caucasian" "Hispanic / Latino" "African Americans" "Caucasian" ...
## $ subject_sex : chr "female" "male" "male" "male" ...
## $ officer_age : int 41 32 50 60 32 40 45 47 33 44 ...
## $ officer_race: chr "Caucasian" "Caucasian" "Caucasian" "Caucasian" ...
## $ officer_sex : chr "male" "male" "male" "male" ...
## $ type : chr "vehicular" "vehicular" "vehicular" "vehicular" ...
## $ violation : chr "OBSTRUCTION OF TRAFFIC BY NON-MOTORIST" "DRIVING ON SUSPENDED LICENSE" "DRIVING ON SUSPENDED LICENSE" "DRIVING ON SUSPENDED LICENSE" ...
## $ arrest_made : logi TRUE TRUE TRUE TRUE TRUE TRUE ...
## - attr(*, "na.action")= 'omit' Named int [1:991168] 1 2 3 5 6 7 8 10 12 13 ...
## ..- attr(*, "names")= chr [1:991168] "1" "2" "3" "5" ...
head(final_data, 10)
## location lat lng subject_age subject_race
## 1 430 STATE ST N 41.89032 -87.62822 26 Caucasian
## 2 4225 ARMITAGE AVE W 41.91681 -87.73230 26 Hispanic / Latino
## 3 204 144TH W 41.63337 -87.62735 33 African Americans
## 4 6940 WINDSOR AVE W 41.96374 -87.80260 36 Caucasian
## 5 1011 GARFIELD BLVD W 41.79358 -87.65053 22 African Americans
## 6 13455 MACKINAW AVE S 41.65029 -87.54207 21 Hispanic / Latino
## 7 2400 17TH N 41.85854 -87.68589 29 African Americans
## 8 1600 OAKTON ST E 42.02446 -87.88432 49 Hispanic / Latino
## 9 1106 SPRINGFIELD AVE N 41.90116 -87.72404 33 African Americans
## 10 6300 LINDER AVE S 41.77809 -87.75929 53 Caucasian
## subject_sex officer_age officer_race officer_sex type
## 1 female 41 Caucasian male vehicular
## 2 male 32 Caucasian male vehicular
## 3 male 50 Caucasian male vehicular
## 4 male 60 Caucasian male vehicular
## 5 male 32 Caucasian male vehicular
## 6 male 40 Hispanic / Latino male vehicular
## 7 male 45 Caucasian male vehicular
## 8 female 47 Caucasian male vehicular
## 9 male 33 Hispanic / Latino male vehicular
## 10 male 44 Hispanic / Latino male vehicular
## violation arrest_made
## 1 OBSTRUCTION OF TRAFFIC BY NON-MOTORIST TRUE
## 2 DRIVING ON SUSPENDED LICENSE TRUE
## 3 DRIVING ON SUSPENDED LICENSE TRUE
## 4 DRIVING ON SUSPENDED LICENSE TRUE
## 5 DRIVING ON SUSPENDED LICENSE TRUE
## 6 DRIVING/NEVER ISSUED LICENSE TRUE
## 7 DRIVING ON SUSPENDED LICENSE TRUE
## 8 DRIVING ON SUSPENDED LICENSE TRUE
## 9 DRIVING ON REVOKED LICENSE TRUE
## 10 HEADLIGHT TWO REQUIRED-MOTOR VEHICLE TRUE
print(unique(final_data$violation))
## [1] "OBSTRUCTION OF TRAFFIC BY NON-MOTORIST"
## [2] "DRIVING ON SUSPENDED LICENSE"
## [3] "DRIVING/NEVER ISSUED LICENSE"
## [4] "DRIVING ON REVOKED LICENSE"
## [5] "HEADLIGHT TWO REQUIRED-MOTOR VEHICLE"
## [6] "NO VALID REGISTRATION"
## [7] "POSS TITLE/REGISTRATION NOT AUTHORIZED ON VEHICLE"
## [8] "IVC - NOT WEARING SEAT BELT/DRIVER"
## [9] "STOP AT STOP SIGN"
## [10] "DRIVING RVK/SUSP DUI/SSS 2ND"
As part of our analysis, we first pre-processed the data to ensure its integrity and completeness, establishing a reliable foundation for subsequent analysis and visualization. With a clean and well-structured dataset, we are now prepared to delve into data visualization and exploration to uncover meaningful patterns and insights.
Data visualization is a crucial element of Exploratory Data Analysis (EDA), offering a way for data analysts to engage visually with the data, which aids in understanding the relationships between variables and identifying potential trends. By creating visual representations, we could effectively interpret the dataset’s underlying structure, facilitating a more intuitive and insightful analysis.[6]
ggplot(final_data, aes(x = subject_race)) +
geom_bar(fill = "steelblue", color = "black") +
labs(title = "Distribution of Police Stops by Subject Race", x = "Subject Race", y = "Count") +
theme_minimal()
The above bar plot shows the distribution of police stops by subject race, with African/American subjects having the highest count of arrests, followed by Hispanic/Latino and Caucasian subjects. The number of stops for Asian/Pacific Islander is significantly lower in comparison.
ggplot(final_data, aes(x = officer_race)) +
geom_bar(fill = "coral", color = "black") +
labs(title = "Distribution of Police Stops by Officer Race", x = "Officer Race", y = "Count") +
theme_minimal()
The above bar plot illustrates the distribution of police stops by officer race. It shows that Caucasian officers are involved in the highest number of police stops, followed by Hispanic/Latino and African American officers. Asian/Pacific Islander officers are involved in a relatively low number of stops.
ggplot(final_data, aes(x = subject_race, y = subject_age, fill = subject_race)) +
geom_violin(scale = "width", trim = FALSE) +
geom_boxplot(width = 0.1, position = position_dodge(width = 0.9)) +
labs(title = "Distribution of Subject Age by Race",
x = "Subject Race", y = "Subject Age", fill ="Subject_Race") +
theme_minimal()
This violin plot showcases distribution of subject age across different racial groups. The wider parts of the violin indicate higher densities of points; the narrow part indicates low-density concentrations for points at a certain age. For the four groups represented, the median age is mainly between 30 and 40 years. Asian/Pacific Islander subjects have the widest age spread, with some older outliers, while the Hispanic/Latino subjects have more concentrated and younger age range.
ggplot(final_data, aes(x = officer_race, y = officer_age, fill = officer_race)) +
geom_boxplot() +
labs(title = "Distribution by Officer Age by Race", x = "Officer Race", y = "Officer Age") +
theme_minimal()
The box plot shows distribution of officer age across different racial groups. The median age for all groups is somewhere in the early and mid-40s; African American officers are the exception, with a little bit higher median age than others. Asian/Pacific Islander and Hispanic/Latino officers demonstrate narrower distributions in terms of age, with most officers being close to age 40.
ggplot(final_data, aes(x = officer_age, fill = subject_race)) +
geom_bar(position = "fill") +
facet_wrap(~ officer_sex) +
scale_y_continuous(labels = scales::percent) +
labs(title = "Proportion of Subject Race by Officer Age and Gender",
x = "Officer Age", y = "Proportion of Subjects Arrested",
fill = "Subject Race") +
theme_minimal()
The above stacked bar plot shows the proportion of different racial groups arrested by the age and gender of officers. In general, for both female and male officers, younger officers arrested more African-Americans and Hispanics/Latinos while older ones arrested an increased proportion of Caucasians and Asian/Pacific Islanders. Overall, this means that the racial distribution of arrests shifts with the age of the officer and varies slightly by gender.
race_correlation <- as.data.frame(table(final_data$subject_race, final_data$officer_race))
ggplot(race_correlation, aes(x = Var1, y = Var2, fill = Freq)) +
geom_tile(color = "black") +
scale_fill_gradient(low = "white", high = "lightblue") +
labs(title = "Correlation between Subject and Officer Race",
x = "Subject Race",
y = "Officer Race",
fill = "Count") +
theme_minimal()
The heatmap reveals the correlation between officer race and the race of subjects they interacted with. Darker blue colors signify greater frequency of occurrences. The Caucasian officers significantly interacted with African American subjects. Interaction with subjects from among the other officer races shows weaker correlations, evidenced by the lighter blue coloration of the cells in the matrix. Hispanic/Latino officers tend to stop more Hispanic/Latino subjects, while other race combinations occur less frequently, indicating potential racial correlations in police stops.
violation_pal <- colorFactor(palette = "Set3", domain = final_data$violation)
leaflet(data = final_data) %>%
addTiles() %>%
addCircleMarkers(
lng = ~lng, lat = ~lat,
color = ~violation_pal(violation),
popup = ~paste("Violation:", violation, "<br>",
"Subject Age:", subject_age, "<br>",
"Officer Age:", officer_age),
radius = 5,
stroke = FALSE,
fillOpacity = 0.8
) %>%
addLegend(
position = "bottomright",
pal = violation_pal,
values = ~violation,
title = "Violation Type"
)
The map above gives us a good view of the top 10 violations across the city.
top_race_per_violation <- final_data %>%
group_by(violation, subject_race) %>%
summarise(count = n(), .groups = "drop") %>%
arrange(desc(count)) %>%
slice_max(order_by = count, by = violation, n = 1)
ggplot(top_race_per_violation, aes(x = violation, y = count, fill = violation)) +
geom_bar(stat = "identity") +
labs(title = "Top Subject Race by Violation",
x = "Violation Type",
y = "Count") +
theme_minimal() +
geom_text(aes(label = subject_race), angle = 90, vjust = -0.5, hjust = 0.5) +
theme(axis.text.x = element_blank(),
axis.title.x = element_blank()) +
scale_fill_brewer(palette = "Set3")
The above bar plot shows the subject race violating specific rules the highest, for each type of violation.
In an analysis, a hypothesis is a preliminary assumption or prediction based on existing knowledge, which guides exploration and testing. This testing is typically done through statistical methods such as t-tests for mean comparisons or chi-square tests for categorical data relationships, yielding p-values that indicate whether observed patterns are statistically significant.[7]
Hypotheses serve as focal points in EDA, helping to frame specific questions and streamline investigation by directing attention toward the most relevant variables and relationships. Through hypothesis testing, assumptions are rigorously evaluated, allowing for meaningful interpretation and robust insights that align with the project’s objectives. By narrowing the focus, hypotheses provide structure and efficiency to EDA, connecting exploratory analysis with deeper inferential statistics or predictive modeling. This approach ensures that findings are not only descriptive but also actionable, enhancing decision-making and potentially shaping strategic direction.
# Ensuring subject_race and officer_race are factors
cleaned_data$subject_race <- as.factor(cleaned_data$subject_race)
cleaned_data$officer_race <- as.factor(cleaned_data$officer_race)
Null Hypothesis (H₀): There is no significant effect of subject race, officer race, and their interaction on the likelihood of arrests during police stops.
Alternative Hypothesis (H₁): There is significant effect of subject race, officer race, and their interaction on the likelihood of arrests during police stops.
The Chi-Square Test is used to analyze the association between two categorical variables. In this case, we examine if there’s a relationship between subject race and officer race in terms of arrest outcomes. Specifically, the test assesses whether arrest likelihood varies significantly across different race pairings
# Chi-Square test for association between subject_race and officer_race
chisq_result <- chisq.test(table(final_data$subject_race, final_data$officer_race))
## Warning in chisq.test(table(final_data$subject_race, final_data$officer_race)):
## Chi-squared approximation may be incorrect
print(chisq_result)
##
## Pearson's Chi-squared test
##
## data: table(final_data$subject_race, final_data$officer_race)
## X-squared = 926.85, df = 9, p-value < 2.2e-16
Note: The warning sign typically occurs when the expected frequencies in some categories are very low. The test can still provide meaningful insights, but we keep limitation in mind.
The p-value is extremely small (less than 0.05), hence we reject the null hypothesis.
There is a significant association between subject race and officer race. It implies that an officer’s race may influence the decision to arrest subjects based on their race.
While the Chi-Square Test showed an association, it does not reveal how these factors interact with each other or quantify the strength of their effects. ANOVA, however, allows us to go further by assessing how strongly each variable and their interactions impact an outcome.
anova_result <- aov(officer_age ~ subject_race * officer_race, data = final_data)
summary(anova_result)
## Df Sum Sq Mean Sq F value Pr(>F)
## subject_race 3 56769 18923 386.21 <2e-16 ***
## officer_race 3 39602 13201 269.42 <2e-16 ***
## subject_race:officer_race 9 12197 1355 27.66 <2e-16 ***
## Residuals 31201 1528720 49
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Since the p-values for subject race, officer race, and their interaction are all highly significant (p < 2e-16), we reject the null hypothesis.
Thus, we conclude that there is strong evidence to suggest that the race of the subject, the race of the officer, and their interaction between the two significantly impact the outcome of arrests during police stops.
Since the ANOVA result is significant, we perform a Tukey’s HSD to see which specific groups (combinations of subject race and officer race) have significant differences in the likelihood of arrests. This step is essential because while ANOVA reveals whether there’s an effect, the post-hoc test identifies precisely which groups differ. This adds nuance to our findings, allowing us to understand if certain combinations of subject and officer race lead to significantly different arrest outcomes compared to others.
tukey_result <- TukeyHSD(anova_result)
print(tukey_result)
## Tukey multiple comparisons of means
## 95% family-wise confidence level
##
## Fit: aov(formula = officer_age ~ subject_race * officer_race, data = final_data)
##
## $subject_race
## diff lwr upr
## Asian/Pacific Islander-African Americans 2.856350 1.16690902 4.5457913
## Caucasian-African Americans 4.606114 4.21510860 4.9971184
## Hispanic / Latino-African Americans 1.820169 1.59928294 2.0410550
## Caucasian-Asian/Pacific Islander 1.749763 0.02586807 3.4736587
## Hispanic / Latino-Asian/Pacific Islander -1.036181 -2.72961577 0.6572535
## Hispanic / Latino-Caucasian -2.785945 -3.19385917 -2.3780299
## p adj
## Asian/Pacific Islander-African Americans 0.0000827
## Caucasian-African Americans 0.0000000
## Hispanic / Latino-African Americans 0.0000000
## Caucasian-Asian/Pacific Islander 0.0450984
## Hispanic / Latino-Asian/Pacific Islander 0.3947311
## Hispanic / Latino-Caucasian 0.0000000
##
## $officer_race
## diff lwr upr
## Asian/Pacific Islander-African Americans -4.2430725 -4.8837276 -3.6024174
## Caucasian-African Americans -2.1497408 -2.4949342 -1.8045474
## Hispanic / Latino-African Americans -3.9803093 -4.3707613 -3.5898573
## Caucasian-Asian/Pacific Islander 2.0933317 1.5250837 2.6615797
## Hispanic / Latino-Asian/Pacific Islander 0.2627632 -0.3340618 0.8595882
## Hispanic / Latino-Caucasian -1.8305685 -2.0853617 -1.5757752
## p adj
## Asian/Pacific Islander-African Americans 0.0000000
## Caucasian-African Americans 0.0000000
## Hispanic / Latino-African Americans 0.0000000
## Caucasian-Asian/Pacific Islander 0.0000000
## Hispanic / Latino-Asian/Pacific Islander 0.6702833
## Hispanic / Latino-Caucasian 0.0000000
##
## $`subject_race:officer_race`
## diff
## Asian/Pacific Islander:African Americans-African Americans:African Americans 4.84068660
## Caucasian:African Americans-African Americans:African Americans 0.73249946
## Hispanic / Latino:African Americans-African Americans:African Americans 0.83179771
## African Americans:Asian/Pacific Islander-African Americans:African Americans -2.10083387
## Asian/Pacific Islander:Asian/Pacific Islander-African Americans:African Americans -1.64820229
## Caucasian:Asian/Pacific Islander-African Americans:African Americans -0.59507729
## Hispanic / Latino:Asian/Pacific Islander-African Americans:African Americans -5.47076866
## African Americans:Caucasian-African Americans:African Americans -2.80173602
## Asian/Pacific Islander:Caucasian-African Americans:African Americans 0.02496844
## Caucasian:Caucasian-African Americans:African Americans 2.45654956
## Hispanic / Latino:Caucasian-African Americans:African Americans -0.12317488
## African Americans:Hispanic / Latino-African Americans:African Americans -4.06531721
## Asian/Pacific Islander:Hispanic / Latino-African Americans:African Americans -0.93709118
## Caucasian:Hispanic / Latino-African Americans:African Americans -0.26450323
## Hispanic / Latino:Hispanic / Latino-African Americans:African Americans -2.74004659
## Caucasian:African Americans-Asian/Pacific Islander:African Americans -4.10818713
## Hispanic / Latino:African Americans-Asian/Pacific Islander:African Americans -4.00888889
## African Americans:Asian/Pacific Islander-Asian/Pacific Islander:African Americans -6.94152047
## Asian/Pacific Islander:Asian/Pacific Islander-Asian/Pacific Islander:African Americans -6.48888889
## Caucasian:Asian/Pacific Islander-Asian/Pacific Islander:African Americans -5.43576389
## Hispanic / Latino:Asian/Pacific Islander-Asian/Pacific Islander:African Americans -10.31145526
## African Americans:Caucasian-Asian/Pacific Islander:African Americans -7.64242262
## Asian/Pacific Islander:Caucasian-Asian/Pacific Islander:African Americans -4.81571816
## Caucasian:Caucasian-Asian/Pacific Islander:African Americans -2.38413704
## Hispanic / Latino:Caucasian-Asian/Pacific Islander:African Americans -4.96386148
## African Americans:Hispanic / Latino-Asian/Pacific Islander:African Americans -8.90600380
## Asian/Pacific Islander:Hispanic / Latino-Asian/Pacific Islander:African Americans -5.77777778
## Caucasian:Hispanic / Latino-Asian/Pacific Islander:African Americans -5.10518983
## Hispanic / Latino:Hispanic / Latino-Asian/Pacific Islander:African Americans -7.58073319
## Hispanic / Latino:African Americans-Caucasian:African Americans 0.09929825
## African Americans:Asian/Pacific Islander-Caucasian:African Americans -2.83333333
## Asian/Pacific Islander:Asian/Pacific Islander-Caucasian:African Americans -2.38070175
## Caucasian:Asian/Pacific Islander-Caucasian:African Americans -1.32757675
## Hispanic / Latino:Asian/Pacific Islander-Caucasian:African Americans -6.20326813
## African Americans:Caucasian-Caucasian:African Americans -3.53423548
## Asian/Pacific Islander:Caucasian-Caucasian:African Americans -0.70753102
## Caucasian:Caucasian-Caucasian:African Americans 1.72405009
## Hispanic / Latino:Caucasian-Caucasian:African Americans -0.85567434
## African Americans:Hispanic / Latino-Caucasian:African Americans -4.79781667
## Asian/Pacific Islander:Hispanic / Latino-Caucasian:African Americans -1.66959064
## Caucasian:Hispanic / Latino-Caucasian:African Americans -0.99700269
## Hispanic / Latino:Hispanic / Latino-Caucasian:African Americans -3.47254605
## African Americans:Asian/Pacific Islander-Hispanic / Latino:African Americans -2.93263158
## Asian/Pacific Islander:Asian/Pacific Islander-Hispanic / Latino:African Americans -2.48000000
## Caucasian:Asian/Pacific Islander-Hispanic / Latino:African Americans -1.42687500
## Hispanic / Latino:Asian/Pacific Islander-Hispanic / Latino:African Americans -6.30256637
## African Americans:Caucasian-Hispanic / Latino:African Americans -3.63353373
## Asian/Pacific Islander:Caucasian-Hispanic / Latino:African Americans -0.80682927
## Caucasian:Caucasian-Hispanic / Latino:African Americans 1.62475185
## Hispanic / Latino:Caucasian-Hispanic / Latino:African Americans -0.95497259
## African Americans:Hispanic / Latino-Hispanic / Latino:African Americans -4.89711491
## Asian/Pacific Islander:Hispanic / Latino-Hispanic / Latino:African Americans -1.76888889
## Caucasian:Hispanic / Latino-Hispanic / Latino:African Americans -1.09630094
## Hispanic / Latino:Hispanic / Latino-Hispanic / Latino:African Americans -3.57184430
## Asian/Pacific Islander:Asian/Pacific Islander-African Americans:Asian/Pacific Islander 0.45263158
## Caucasian:Asian/Pacific Islander-African Americans:Asian/Pacific Islander 1.50575658
## Hispanic / Latino:Asian/Pacific Islander-African Americans:Asian/Pacific Islander -3.36993479
## African Americans:Caucasian-African Americans:Asian/Pacific Islander -0.70090215
## Asian/Pacific Islander:Caucasian-African Americans:Asian/Pacific Islander 2.12580231
## Caucasian:Caucasian-African Americans:Asian/Pacific Islander 4.55738343
## Hispanic / Latino:Caucasian-African Americans:Asian/Pacific Islander 1.97765899
## African Americans:Hispanic / Latino-African Americans:Asian/Pacific Islander -1.96448334
## Asian/Pacific Islander:Hispanic / Latino-African Americans:Asian/Pacific Islander 1.16374269
## Caucasian:Hispanic / Latino-African Americans:Asian/Pacific Islander 1.83633064
## Hispanic / Latino:Hispanic / Latino-African Americans:Asian/Pacific Islander -0.63921272
## Caucasian:Asian/Pacific Islander-Asian/Pacific Islander:Asian/Pacific Islander 1.05312500
## Hispanic / Latino:Asian/Pacific Islander-Asian/Pacific Islander:Asian/Pacific Islander -3.82256637
## African Americans:Caucasian-Asian/Pacific Islander:Asian/Pacific Islander -1.15353373
## Asian/Pacific Islander:Caucasian-Asian/Pacific Islander:Asian/Pacific Islander 1.67317073
## Caucasian:Caucasian-Asian/Pacific Islander:Asian/Pacific Islander 4.10475185
## Hispanic / Latino:Caucasian-Asian/Pacific Islander:Asian/Pacific Islander 1.52502741
## African Americans:Hispanic / Latino-Asian/Pacific Islander:Asian/Pacific Islander -2.41711491
## Asian/Pacific Islander:Hispanic / Latino-Asian/Pacific Islander:Asian/Pacific Islander 0.71111111
## Caucasian:Hispanic / Latino-Asian/Pacific Islander:Asian/Pacific Islander 1.38369906
## Hispanic / Latino:Hispanic / Latino-Asian/Pacific Islander:Asian/Pacific Islander -1.09184430
## Hispanic / Latino:Asian/Pacific Islander-Caucasian:Asian/Pacific Islander -4.87569137
## African Americans:Caucasian-Caucasian:Asian/Pacific Islander -2.20665873
## Asian/Pacific Islander:Caucasian-Caucasian:Asian/Pacific Islander 0.62004573
## Caucasian:Caucasian-Caucasian:Asian/Pacific Islander 3.05162685
## Hispanic / Latino:Caucasian-Caucasian:Asian/Pacific Islander 0.47190241
## African Americans:Hispanic / Latino-Caucasian:Asian/Pacific Islander -3.47023991
## Asian/Pacific Islander:Hispanic / Latino-Caucasian:Asian/Pacific Islander -0.34201389
## Caucasian:Hispanic / Latino-Caucasian:Asian/Pacific Islander 0.33057406
## Hispanic / Latino:Hispanic / Latino-Caucasian:Asian/Pacific Islander -2.14496930
## African Americans:Caucasian-Hispanic / Latino:Asian/Pacific Islander 2.66903264
## Asian/Pacific Islander:Caucasian-Hispanic / Latino:Asian/Pacific Islander 5.49573710
## Caucasian:Caucasian-Hispanic / Latino:Asian/Pacific Islander 7.92731822
## Hispanic / Latino:Caucasian-Hispanic / Latino:Asian/Pacific Islander 5.34759378
## African Americans:Hispanic / Latino-Hispanic / Latino:Asian/Pacific Islander 1.40545146
## Asian/Pacific Islander:Hispanic / Latino-Hispanic / Latino:Asian/Pacific Islander 4.53367748
## Caucasian:Hispanic / Latino-Hispanic / Latino:Asian/Pacific Islander 5.20626543
## Hispanic / Latino:Hispanic / Latino-Hispanic / Latino:Asian/Pacific Islander 2.73072207
## Asian/Pacific Islander:Caucasian-African Americans:Caucasian 2.82670446
## Caucasian:Caucasian-African Americans:Caucasian 5.25828557
## Hispanic / Latino:Caucasian-African Americans:Caucasian 2.67856114
## African Americans:Hispanic / Latino-African Americans:Caucasian -1.26358119
## Asian/Pacific Islander:Hispanic / Latino-African Americans:Caucasian 1.86464484
## Caucasian:Hispanic / Latino-African Americans:Caucasian 2.53723279
## Hispanic / Latino:Hispanic / Latino-African Americans:Caucasian 0.06168943
## Caucasian:Caucasian-Asian/Pacific Islander:Caucasian 2.43158112
## Hispanic / Latino:Caucasian-Asian/Pacific Islander:Caucasian -0.14814332
## African Americans:Hispanic / Latino-Asian/Pacific Islander:Caucasian -4.09028565
## Asian/Pacific Islander:Hispanic / Latino-Asian/Pacific Islander:Caucasian -0.96205962
## Caucasian:Hispanic / Latino-Asian/Pacific Islander:Caucasian -0.28947167
## Hispanic / Latino:Hispanic / Latino-Asian/Pacific Islander:Caucasian -2.76501503
## Hispanic / Latino:Caucasian-Caucasian:Caucasian -2.57972444
## African Americans:Hispanic / Latino-Caucasian:Caucasian -6.52186676
## Asian/Pacific Islander:Hispanic / Latino-Caucasian:Caucasian -3.39364074
## Caucasian:Hispanic / Latino-Caucasian:Caucasian -2.72105279
## Hispanic / Latino:Hispanic / Latino-Caucasian:Caucasian -5.19659615
## African Americans:Hispanic / Latino-Hispanic / Latino:Caucasian -3.94214233
## Asian/Pacific Islander:Hispanic / Latino-Hispanic / Latino:Caucasian -0.81391630
## Caucasian:Hispanic / Latino-Hispanic / Latino:Caucasian -0.14132835
## Hispanic / Latino:Hispanic / Latino-Hispanic / Latino:Caucasian -2.61687171
## Asian/Pacific Islander:Hispanic / Latino-African Americans:Hispanic / Latino 3.12822603
## Caucasian:Hispanic / Latino-African Americans:Hispanic / Latino 3.80081397
## Hispanic / Latino:Hispanic / Latino-African Americans:Hispanic / Latino 1.32527061
## Caucasian:Hispanic / Latino-Asian/Pacific Islander:Hispanic / Latino 0.67258795
## Hispanic / Latino:Hispanic / Latino-Asian/Pacific Islander:Hispanic / Latino -1.80295541
## Hispanic / Latino:Hispanic / Latino-Caucasian:Hispanic / Latino -2.47554336
## lwr
## Asian/Pacific Islander:African Americans-African Americans:African Americans -3.167273356
## Caucasian:African Americans-African Americans:African Americans -1.563578877
## Hispanic / Latino:African Americans-African Americans:African Americans -0.367353563
## African Americans:Asian/Pacific Islander-African Americans:African Americans -3.244617750
## Asian/Pacific Islander:Asian/Pacific Islander-African Americans:African Americans -12.383544959
## Caucasian:Asian/Pacific Islander-African Americans:African Americans -3.630400784
## Hispanic / Latino:Asian/Pacific Islander-African Americans:African Americans -6.695338896
## African Americans:Caucasian-African Americans:African Americans -3.329630503
## Asian/Pacific Islander:Caucasian-African Americans:African Americans -2.665878950
## Caucasian:Caucasian-African Americans:African Americans 1.727943228
## Hispanic / Latino:Caucasian-African Americans:African Americans -0.676390398
## African Americans:Hispanic / Latino-African Americans:African Americans -4.671811095
## Asian/Pacific Islander:Hispanic / Latino-African Americans:African Americans -6.609597054
## Caucasian:Hispanic / Latino-African Americans:African Americans -1.689301497
## Hispanic / Latino:Hispanic / Latino-African Americans:African Americans -3.442699237
## Caucasian:African Americans-Asian/Pacific Islander:African Americans -12.411496840
## Hispanic / Latino:African Americans-Asian/Pacific Islander:African Americans -12.078023916
## African Americans:Asian/Pacific Islander-Asian/Pacific Islander:African Americans -15.002613314
## Asian/Pacific Islander:Asian/Pacific Islander-Asian/Pacific Islander:African Americans -19.865007852
## Caucasian:Asian/Pacific Islander-Asian/Pacific Islander:African Americans -13.973103347
## Hispanic / Latino:Asian/Pacific Islander-Asian/Pacific Islander:African Americans -18.384406925
## African Americans:Caucasian-Asian/Pacific Islander:African Americans -15.639400101
## Asian/Pacific Islander:Caucasian-Asian/Pacific Islander:African Americans -13.236741610
## Caucasian:Caucasian-Asian/Pacific Islander:African Americans -10.396867131
## Hispanic / Latino:Caucasian-Asian/Pacific Islander:African Americans -12.962550352
## African Americans:Hispanic / Latino-Asian/Pacific Islander:African Americans -16.908554094
## Asian/Pacific Islander:Hispanic / Latino-Asian/Pacific Islander:African Americans -15.568094382
## Caucasian:Hispanic / Latino-Asian/Pacific Islander:African Americans -13.210930167
## Hispanic / Latino:Hispanic / Latino-Asian/Pacific Islander:African Americans -15.591144980
## Hispanic / Latino:African Americans-Caucasian:African Americans -2.401800155
## African Americans:Asian/Pacific Islander-Caucasian:African Americans -5.308362828
## Asian/Pacific Islander:Asian/Pacific Islander-Caucasian:African Americans -13.338124427
## Caucasian:Asian/Pacific Islander-Caucasian:African Americans -5.073336776
## Hispanic / Latino:Asian/Pacific Islander-Caucasian:African Americans -8.716652636
## African Americans:Caucasian-Caucasian:African Americans -5.791712397
## Asian/Pacific Islander:Caucasian-Caucasian:African Americans -4.180021356
## Caucasian:Caucasian-Caucasian:African Americans -0.588609981
## Hispanic / Latino:Caucasian-Caucasian:African Americans -3.119206283
## African Americans:Hispanic / Latino-Caucasian:African Americans -7.074956163
## Asian/Pacific Islander:Hispanic / Latino-Caucasian:African Americans -7.751930023
## Caucasian:Hispanic / Latino-Caucasian:African Americans -3.613790713
## Hispanic / Latino:Hispanic / Latino-Caucasian:African Americans -5.777161029
## African Americans:Asian/Pacific Islander-Hispanic / Latino:African Americans -4.446487263
## Asian/Pacific Islander:Asian/Pacific Islander-Hispanic / Latino:African Americans -13.261052809
## Caucasian:Asian/Pacific Islander-Hispanic / Latino:African Americans -4.620103174
## Hispanic / Latino:Asian/Pacific Islander-Hispanic / Latino:African Americans -7.878348630
## African Americans:Caucasian-Hispanic / Latino:African Americans -4.757006049
## Asian/Pacific Islander:Caucasian-Hispanic / Latino:African Americans -3.674611887
## Caucasian:Caucasian-Hispanic / Latino:African Americans 0.394148479
## Hispanic / Latino:Caucasian-Hispanic / Latino:African Americans -2.090562690
## African Americans:Hispanic / Latino-Hispanic / Latino:African Americans -6.059591713
## Asian/Pacific Islander:Hispanic / Latino-Hispanic / Latino:African Americans -7.527433875
## Caucasian:Hispanic / Latino-Hispanic / Latino:African Americans -2.832263949
## Hispanic / Latino:Hispanic / Latino-Hispanic / Latino:African Americans -4.787261187
## Asian/Pacific Islander:Asian/Pacific Islander-African Americans:Asian/Pacific Islander -10.322403338
## Caucasian:Asian/Pacific Islander-African Americans:Asian/Pacific Islander -1.667094499
## Hispanic / Latino:Asian/Pacific Islander-African Americans:Asian/Pacific Islander -4.904003734
## African Americans:Caucasian-African Americans:Asian/Pacific Islander -1.765076874
## Asian/Pacific Islander:Caucasian-African Americans:Asian/Pacific Islander -0.719273249
## Caucasian:Caucasian-African Americans:Asian/Pacific Islander 3.380666620
## Hispanic / Latino:Caucasian-African Americans:Asian/Pacific Islander 0.900699070
## African Americans:Hispanic / Latino-African Americans:Asian/Pacific Islander -3.069757102
## Asian/Pacific Islander:Hispanic / Latino-African Americans:Asian/Pacific Islander -4.583527805
## Caucasian:Hispanic / Latino-African Americans:Asian/Pacific Islander 0.138141793
## Hispanic / Latino:Hispanic / Latino-African Americans:Asian/Pacific Islander -1.800038290
## Caucasian:Asian/Pacific Islander-Asian/Pacific Islander:Asian/Pacific Islander -10.082687705
## Hispanic / Latino:Asian/Pacific Islander-Asian/Pacific Islander:Asian/Pacific Islander -14.606476059
## African Americans:Caucasian-Asian/Pacific Islander:Asian/Pacific Islander -11.880686587
## Asian/Pacific Islander:Caucasian-Asian/Pacific Islander:Asian/Pacific Islander -9.373720033
## Caucasian:Caucasian-Asian/Pacific Islander:Asian/Pacific Islander -6.634149543
## Hispanic / Latino:Caucasian-Asian/Pacific Islander:Asian/Pacific Islander -9.203401331
## African Americans:Hispanic / Latino-Asian/Pacific Islander:Asian/Pacific Islander -13.148422884
## Asian/Pacific Islander:Hispanic / Latino-Asian/Pacific Islander:Asian/Pacific Islander -11.412026221
## Caucasian:Hispanic / Latino-Asian/Pacific Islander:Asian/Pacific Islander -9.424778446
## Hispanic / Latino:Hispanic / Latino-Asian/Pacific Islander:Asian/Pacific Islander -11.829016024
## Hispanic / Latino:Asian/Pacific Islander-Caucasian:Asian/Pacific Islander -8.078551758
## African Americans:Caucasian-Caucasian:Asian/Pacific Islander -5.212888091
## Asian/Pacific Islander:Caucasian-Caucasian:Asian/Pacific Islander -3.379879527
## Caucasian:Caucasian-Caucasian:Asian/Pacific Islander 0.003740764
## Hispanic / Latino:Caucasian-Caucasian:Asian/Pacific Islander -2.538876525
## African Americans:Hispanic / Latino-Caucasian:Asian/Pacific Islander -6.491262463
## Asian/Pacific Islander:Hispanic / Latino-Caucasian:Asian/Pacific Islander -6.740143716
## Caucasian:Hispanic / Latino-Caucasian:Asian/Pacific Islander -2.954055675
## Hispanic / Latino:Hispanic / Latino-Caucasian:Asian/Pacific Islander -5.186755476
## African Americans:Caucasian-Hispanic / Latino:Asian/Pacific Islander 1.518468200
## Asian/Pacific Islander:Caucasian-Hispanic / Latino:Asian/Pacific Islander 2.617233042
## Caucasian:Caucasian-Hispanic / Latino:Asian/Pacific Islander 6.671932567
## Hispanic / Latino:Caucasian-Hispanic / Latino:Asian/Pacific Islander 4.185193954
## African Americans:Hispanic / Latino-Hispanic / Latino:Asian/Pacific Islander 0.216771185
## Asian/Pacific Islander:Hispanic / Latino-Hispanic / Latino:Asian/Pacific Islander -1.230214331
## Caucasian:Hispanic / Latino-Hispanic / Latino:Asian/Pacific Islander 3.452647443
## Hispanic / Latino:Hispanic / Latino-Hispanic / Latino:Asian/Pacific Islander 1.490219475
## Asian/Pacific Islander:Caucasian-African Americans:Caucasian 0.168719138
## Caucasian:Caucasian-African Americans:Caucasian 4.662388380
## Hispanic / Latino:Caucasian-African Americans:Caucasian 2.317626664
## African Americans:Hispanic / Latino-African Americans:Caucasian -1.701828973
## Asian/Pacific Islander:Hispanic / Latino-African Americans:Caucasian -3.792346338
## Caucasian:Hispanic / Latino-African Americans:Caucasian 1.175514614
## Hispanic / Latino:Hispanic / Latino-African Americans:Caucasian -0.502178487
## Caucasian:Caucasian-Asian/Pacific Islander:Caucasian -0.273429153
## Hispanic / Latino:Caucasian-Asian/Pacific Islander:Caucasian -2.811273205
## African Americans:Hispanic / Latino-Asian/Pacific Islander:Caucasian -6.764990903
## Asian/Pacific Islander:Hispanic / Latino-Asian/Pacific Islander:Caucasian -7.204137501
## Caucasian:Hispanic / Latino-Asian/Pacific Islander:Caucasian -3.258691009
## Hispanic / Latino:Hispanic / Latino-Asian/Pacific Islander:Caucasian -5.463150335
## Hispanic / Latino:Caucasian-Caucasian:Caucasian -3.198164643
## African Americans:Hispanic / Latino-Caucasian:Caucasian -7.188391869
## Asian/Pacific Islander:Hispanic / Latino-Caucasian:Caucasian -9.072878693
## Caucasian:Hispanic / Latino-Caucasian:Caucasian -4.172421444
## Hispanic / Latino:Hispanic / Latino-Caucasian:Caucasian -5.951673376
## African Americans:Hispanic / Latino-Hispanic / Latino:Caucasian -4.410582232
## Asian/Pacific Islander:Hispanic / Latino-Hispanic / Latino:Caucasian -6.473326517
## Caucasian:Hispanic / Latino-Hispanic / Latino:Caucasian -1.513061273
## Hispanic / Latino:Hispanic / Latino-Hispanic / Latino:Caucasian -3.204512630
## Asian/Pacific Islander:Hispanic / Latino-African Americans:Hispanic / Latino -2.536640382
## Caucasian:Hispanic / Latino-African Americans:Hispanic / Latino 2.406741296
## Hispanic / Latino:Hispanic / Latino-African Americans:Hispanic / Latino 0.687219461
## Caucasian:Hispanic / Latino-Asian/Pacific Islander:Hispanic / Latino -5.137138954
## Hispanic / Latino:Hispanic / Latino-Asian/Pacific Islander:Hispanic / Latino -7.478922054
## Hispanic / Latino:Hispanic / Latino-Caucasian:Hispanic / Latino -3.914058056
## upr
## Asian/Pacific Islander:African Americans-African Americans:African Americans 12.84864655
## Caucasian:African Americans-African Americans:African Americans 3.02857780
## Hispanic / Latino:African Americans-African Americans:African Americans 2.03094898
## African Americans:Asian/Pacific Islander-African Americans:African Americans -0.95704999
## Asian/Pacific Islander:Asian/Pacific Islander-African Americans:African Americans 9.08714038
## Caucasian:Asian/Pacific Islander-African Americans:African Americans 2.44024620
## Hispanic / Latino:Asian/Pacific Islander-African Americans:African Americans -4.24619843
## African Americans:Caucasian-African Americans:African Americans -2.27384153
## Asian/Pacific Islander:Caucasian-African Americans:African Americans 2.71581583
## Caucasian:Caucasian-African Americans:African Americans 3.18515589
## Hispanic / Latino:Caucasian-African Americans:African Americans 0.43004064
## African Americans:Hispanic / Latino-African Americans:African Americans -3.45882332
## Asian/Pacific Islander:Hispanic / Latino-African Americans:African Americans 4.73541469
## Caucasian:Hispanic / Latino-African Americans:African Americans 1.16029503
## Hispanic / Latino:Hispanic / Latino-African Americans:African Americans -2.03739395
## Caucasian:African Americans-Asian/Pacific Islander:African Americans 4.19512257
## Hispanic / Latino:African Americans-Asian/Pacific Islander:African Americans 4.06024614
## African Americans:Asian/Pacific Islander-Asian/Pacific Islander:African Americans 1.11957238
## Asian/Pacific Islander:Asian/Pacific Islander-Asian/Pacific Islander:African Americans 6.88723007
## Caucasian:Asian/Pacific Islander-Asian/Pacific Islander:African Americans 3.10157557
## Hispanic / Latino:Asian/Pacific Islander-Asian/Pacific Islander:African Americans -2.23850360
## African Americans:Caucasian-Asian/Pacific Islander:African Americans 0.35455487
## Asian/Pacific Islander:Caucasian-Asian/Pacific Islander:African Americans 3.60530530
## Caucasian:Caucasian-Asian/Pacific Islander:African Americans 5.62859305
## Hispanic / Latino:Caucasian-Asian/Pacific Islander:African Americans 3.03482740
## African Americans:Hispanic / Latino-Asian/Pacific Islander:African Americans -0.90345351
## Asian/Pacific Islander:Hispanic / Latino-Asian/Pacific Islander:African Americans 4.01253883
## Caucasian:Hispanic / Latino-Asian/Pacific Islander:African Americans 3.00055051
## Hispanic / Latino:Hispanic / Latino-Asian/Pacific Islander:African Americans 0.42967860
## Hispanic / Latino:African Americans-Caucasian:African Americans 2.60039665
## African Americans:Asian/Pacific Islander-Caucasian:African Americans -0.35830384
## Asian/Pacific Islander:Asian/Pacific Islander-Caucasian:African Americans 8.57672092
## Caucasian:Asian/Pacific Islander-Caucasian:African Americans 2.41818327
## Hispanic / Latino:Asian/Pacific Islander-Caucasian:African Americans -3.68988362
## African Americans:Caucasian-Caucasian:African Americans -1.27675857
## Asian/Pacific Islander:Caucasian-Caucasian:African Americans 2.76495931
## Caucasian:Caucasian-Caucasian:African Americans 4.03671017
## Hispanic / Latino:Caucasian-Caucasian:African Americans 1.40785760
## African Americans:Hispanic / Latino-Caucasian:African Americans -2.52067717
## Asian/Pacific Islander:Hispanic / Latino-Caucasian:African Americans 4.41274874
## Caucasian:Hispanic / Latino-Caucasian:African Americans 1.61978532
## Hispanic / Latino:Hispanic / Latino-Caucasian:African Americans -1.16793108
## African Americans:Asian/Pacific Islander-Hispanic / Latino:African Americans -1.41877589
## Asian/Pacific Islander:Asian/Pacific Islander-Hispanic / Latino:African Americans 8.30105281
## Caucasian:Asian/Pacific Islander-Hispanic / Latino:African Americans 1.76635317
## Hispanic / Latino:Asian/Pacific Islander-Hispanic / Latino:African Americans -4.72678411
## African Americans:Caucasian-Hispanic / Latino:African Americans -2.51006141
## Asian/Pacific Islander:Caucasian-Hispanic / Latino:African Americans 2.06095335
## Caucasian:Caucasian-Hispanic / Latino:African Americans 2.85535522
## Hispanic / Latino:Caucasian-Hispanic / Latino:African Americans 0.18061751
## African Americans:Hispanic / Latino-Hispanic / Latino:African Americans -3.73463812
## Asian/Pacific Islander:Hispanic / Latino-Hispanic / Latino:African Americans 3.98965610
## Caucasian:Hispanic / Latino-Hispanic / Latino:African Americans 0.63966207
## Hispanic / Latino:Hispanic / Latino-Hispanic / Latino:African Americans -2.35642741
## Asian/Pacific Islander:Asian/Pacific Islander-African Americans:Asian/Pacific Islander 11.22766650
## Caucasian:Asian/Pacific Islander-African Americans:Asian/Pacific Islander 4.67860766
## Hispanic / Latino:Asian/Pacific Islander-African Americans:Asian/Pacific Islander -1.83586585
## African Americans:Caucasian-African Americans:Asian/Pacific Islander 0.36327258
## Asian/Pacific Islander:Caucasian-African Americans:Asian/Pacific Islander 4.97087787
## Caucasian:Caucasian-African Americans:Asian/Pacific Islander 5.73410023
## Hispanic / Latino:Caucasian-African Americans:Asian/Pacific Islander 3.05461891
## African Americans:Hispanic / Latino-African Americans:Asian/Pacific Islander -0.85920957
## Asian/Pacific Islander:Hispanic / Latino-African Americans:Asian/Pacific Islander 6.91101319
## Caucasian:Hispanic / Latino-African Americans:Asian/Pacific Islander 3.53451948
## Hispanic / Latino:Hispanic / Latino-African Americans:Asian/Pacific Islander 0.52161285
## Caucasian:Asian/Pacific Islander-Asian/Pacific Islander:Asian/Pacific Islander 12.18893770
## Hispanic / Latino:Asian/Pacific Islander-Asian/Pacific Islander:Asian/Pacific Islander 6.96134332
## African Americans:Caucasian-Asian/Pacific Islander:Asian/Pacific Islander 9.57361913
## Asian/Pacific Islander:Caucasian-Asian/Pacific Islander:Asian/Pacific Islander 12.72006150
## Caucasian:Caucasian-Asian/Pacific Islander:Asian/Pacific Islander 14.84365324
## Hispanic / Latino:Caucasian-Asian/Pacific Islander:Asian/Pacific Islander 12.25345616
## African Americans:Hispanic / Latino-Asian/Pacific Islander:Asian/Pacific Islander 8.31419305
## Asian/Pacific Islander:Hispanic / Latino-Asian/Pacific Islander:Asian/Pacific Islander 12.83424844
## Caucasian:Hispanic / Latino-Asian/Pacific Islander:Asian/Pacific Islander 12.19217657
## Hispanic / Latino:Hispanic / Latino-Asian/Pacific Islander:Asian/Pacific Islander 9.64532742
## Hispanic / Latino:Asian/Pacific Islander-Caucasian:Asian/Pacific Islander -1.67283099
## African Americans:Caucasian-Caucasian:Asian/Pacific Islander 0.79957064
## Asian/Pacific Islander:Caucasian-Caucasian:Asian/Pacific Islander 4.61997099
## Caucasian:Caucasian-Caucasian:Asian/Pacific Islander 6.09951293
## Hispanic / Latino:Caucasian-Caucasian:Asian/Pacific Islander 3.48268135
## African Americans:Hispanic / Latino-Caucasian:Asian/Pacific Islander -0.44921737
## Asian/Pacific Islander:Hispanic / Latino-Caucasian:Asian/Pacific Islander 6.05611594
## Caucasian:Hispanic / Latino-Caucasian:Asian/Pacific Islander 3.61520379
## Hispanic / Latino:Hispanic / Latino-Caucasian:Asian/Pacific Islander 0.89681688
## African Americans:Caucasian-Hispanic / Latino:Asian/Pacific Islander 3.81959709
## Asian/Pacific Islander:Caucasian-Hispanic / Latino:Asian/Pacific Islander 8.37424116
## Caucasian:Caucasian-Hispanic / Latino:Asian/Pacific Islander 9.18270387
## Hispanic / Latino:Caucasian-Hispanic / Latino:Asian/Pacific Islander 6.50999361
## African Americans:Hispanic / Latino-Hispanic / Latino:Asian/Pacific Islander 2.59413173
## Asian/Pacific Islander:Hispanic / Latino-Hispanic / Latino:Asian/Pacific Islander 10.29756930
## Caucasian:Hispanic / Latino-Hispanic / Latino:Asian/Pacific Islander 6.95988342
## Hispanic / Latino:Hispanic / Latino-Hispanic / Latino:Asian/Pacific Islander 3.97122467
## Asian/Pacific Islander:Caucasian-African Americans:Caucasian 5.48468978
## Caucasian:Caucasian-African Americans:Caucasian 5.85418277
## Hispanic / Latino:Caucasian-African Americans:Caucasian 3.03949561
## African Americans:Hispanic / Latino-African Americans:Caucasian -0.82533340
## Asian/Pacific Islander:Hispanic / Latino-African Americans:Caucasian 7.52163601
## Caucasian:Hispanic / Latino-African Americans:Caucasian 3.89895096
## Hispanic / Latino:Hispanic / Latino-African Americans:Caucasian 0.62555734
## Caucasian:Caucasian-Asian/Pacific Islander:Caucasian 5.13659139
## Hispanic / Latino:Caucasian-Asian/Pacific Islander:Caucasian 2.51498657
## African Americans:Hispanic / Latino-Asian/Pacific Islander:Caucasian -1.41558039
## Asian/Pacific Islander:Hispanic / Latino-Asian/Pacific Islander:Caucasian 5.28001826
## Caucasian:Hispanic / Latino-Asian/Pacific Islander:Caucasian 2.67974766
## Hispanic / Latino:Hispanic / Latino-Asian/Pacific Islander:Caucasian -0.06687973
## Hispanic / Latino:Caucasian-Caucasian:Caucasian -1.96128423
## African Americans:Hispanic / Latino-Caucasian:Caucasian -5.85534166
## Asian/Pacific Islander:Hispanic / Latino-Caucasian:Caucasian 2.28559722
## Caucasian:Hispanic / Latino-Caucasian:Caucasian -1.26968413
## Hispanic / Latino:Hispanic / Latino-Caucasian:Caucasian -4.44151892
## African Americans:Hispanic / Latino-Hispanic / Latino:Caucasian -3.47370242
## Asian/Pacific Islander:Hispanic / Latino-Hispanic / Latino:Caucasian 4.84549391
## Caucasian:Hispanic / Latino-Hispanic / Latino:Caucasian 1.23040457
## Hispanic / Latino:Hispanic / Latino-Hispanic / Latino:Caucasian -2.02923080
## Asian/Pacific Islander:Hispanic / Latino-African Americans:Hispanic / Latino 8.79309243
## Caucasian:Hispanic / Latino-African Americans:Hispanic / Latino 5.19488665
## Hispanic / Latino:Hispanic / Latino-African Americans:Hispanic / Latino 1.96332177
## Caucasian:Hispanic / Latino-Asian/Pacific Islander:Hispanic / Latino 6.48231485
## Hispanic / Latino:Hispanic / Latino-Asian/Pacific Islander:Hispanic / Latino 3.87301123
## Hispanic / Latino:Hispanic / Latino-Caucasian:Hispanic / Latino -1.03702866
## p adj
## Asian/Pacific Islander:African Americans-African Americans:African Americans 0.7838997
## Caucasian:African Americans-African Americans:African Americans 0.9994372
## Hispanic / Latino:African Americans-African Americans:African Americans 0.5655374
## African Americans:Asian/Pacific Islander-African Americans:African Americans 0.0000000
## Asian/Pacific Islander:Asian/Pacific Islander-African Americans:African Americans 1.0000000
## Caucasian:Asian/Pacific Islander-African Americans:African Americans 0.9999990
## Hispanic / Latino:Asian/Pacific Islander-African Americans:African Americans 0.0000000
## African Americans:Caucasian-African Americans:African Americans 0.0000000
## Asian/Pacific Islander:Caucasian-African Americans:African Americans 1.0000000
## Caucasian:Caucasian-African Americans:African Americans 0.0000000
## Hispanic / Latino:Caucasian-African Americans:African Americans 0.9999942
## African Americans:Hispanic / Latino-African Americans:African Americans 0.0000000
## Asian/Pacific Islander:Hispanic / Latino-African Americans:African Americans 0.9999999
## Caucasian:Hispanic / Latino-African Americans:African Americans 0.9999995
## Hispanic / Latino:Hispanic / Latino-African Americans:African Americans 0.0000000
## Caucasian:African Americans-Asian/Pacific Islander:African Americans 0.9485754
## Hispanic / Latino:African Americans-Asian/Pacific Islander:African Americans 0.9467791
## African Americans:Asian/Pacific Islander-Asian/Pacific Islander:African Americans 0.1905981
## Asian/Pacific Islander:Asian/Pacific Islander-Asian/Pacific Islander:African Americans 0.9564389
## Caucasian:Asian/Pacific Islander-Asian/Pacific Islander:African Americans 0.7105774
## Hispanic / Latino:Asian/Pacific Islander-Asian/Pacific Islander:African Americans 0.0013112
## African Americans:Caucasian-Asian/Pacific Islander:African Americans 0.0797142
## Asian/Pacific Islander:Caucasian-Asian/Pacific Islander:African Americans 0.8476544
## Caucasian:Caucasian-Asian/Pacific Islander:African Americans 0.9997575
## Hispanic / Latino:Caucasian-Asian/Pacific Islander:African Americans 0.7483804
## African Americans:Hispanic / Latino-Asian/Pacific Islander:African Americans 0.0131009
## Asian/Pacific Islander:Hispanic / Latino-Asian/Pacific Islander:African Americans 0.8133548
## Caucasian:Hispanic / Latino-Asian/Pacific Islander:African Americans 0.7269619
## Hispanic / Latino:Hispanic / Latino-Asian/Pacific Islander:African Americans 0.0875142
## Hispanic / Latino:African Americans-Caucasian:African Americans 1.0000000
## African Americans:Asian/Pacific Islander-Caucasian:African Americans 0.0086503
## Asian/Pacific Islander:Asian/Pacific Islander-Caucasian:African Americans 0.9999959
## Caucasian:Asian/Pacific Islander-Caucasian:African Americans 0.9980983
## Hispanic / Latino:Asian/Pacific Islander-Caucasian:African Americans 0.0000000
## African Americans:Caucasian-Caucasian:African Americans 0.0000096
## Asian/Pacific Islander:Caucasian-Caucasian:African Americans 0.9999983
## Caucasian:Caucasian-Caucasian:African Americans 0.4314242
## Hispanic / Latino:Caucasian-Caucasian:African Americans 0.9961337
## African Americans:Hispanic / Latino-Caucasian:African Americans 0.0000000
## Asian/Pacific Islander:Hispanic / Latino-Caucasian:African Americans 0.9999112
## Caucasian:Hispanic / Latino-Caucasian:African Americans 0.9957940
## Hispanic / Latino:Hispanic / Latino-Caucasian:African Americans 0.0000285
## African Americans:Asian/Pacific Islander-Hispanic / Latino:African Americans 0.0000000
## Asian/Pacific Islander:Asian/Pacific Islander-Hispanic / Latino:African Americans 0.9999911
## Caucasian:Asian/Pacific Islander-Hispanic / Latino:African Americans 0.9791090
## Hispanic / Latino:Asian/Pacific Islander-Hispanic / Latino:African Americans 0.0000000
## African Americans:Caucasian-Hispanic / Latino:African Americans 0.0000000
## Asian/Pacific Islander:Caucasian-Hispanic / Latino:African Americans 0.9998789
## Caucasian:Caucasian-Hispanic / Latino:African Americans 0.0006742
## Hispanic / Latino:Caucasian-Hispanic / Latino:African Americans 0.2243308
## African Americans:Hispanic / Latino-Hispanic / Latino:African Americans 0.0000000
## Asian/Pacific Islander:Hispanic / Latino-Hispanic / Latino:African Americans 0.9996425
## Caucasian:Hispanic / Latino-Hispanic / Latino:African Americans 0.7229485
## Hispanic / Latino:Hispanic / Latino-Hispanic / Latino:African Americans 0.0000000
## Asian/Pacific Islander:Asian/Pacific Islander-African Americans:Asian/Pacific Islander 1.0000000
## Caucasian:Asian/Pacific Islander-African Americans:Asian/Pacific Islander 0.9639654
## Hispanic / Latino:Asian/Pacific Islander-African Americans:Asian/Pacific Islander 0.0000000
## African Americans:Caucasian-African Americans:Asian/Pacific Islander 0.6563014
## Asian/Pacific Islander:Caucasian-African Americans:Asian/Pacific Islander 0.4271671
## Caucasian:Caucasian-African Americans:Asian/Pacific Islander 0.0000000
## Hispanic / Latino:Caucasian-African Americans:Asian/Pacific Islander 0.0000000
## African Americans:Hispanic / Latino-African Americans:Asian/Pacific Islander 0.0000001
## Asian/Pacific Islander:Hispanic / Latino-African Americans:Asian/Pacific Islander 0.9999984
## Caucasian:Hispanic / Latino-African Americans:Asian/Pacific Islander 0.0194520
## Hispanic / Latino:Hispanic / Latino-African Americans:Asian/Pacific Islander 0.8825221
## Caucasian:Asian/Pacific Islander-Asian/Pacific Islander:Asian/Pacific Islander 1.0000000
## Hispanic / Latino:Asian/Pacific Islander-Asian/Pacific Islander:Asian/Pacific Islander 0.9980954
## African Americans:Caucasian-Asian/Pacific Islander:Asian/Pacific Islander 1.0000000
## Asian/Pacific Islander:Caucasian-Asian/Pacific Islander:Asian/Pacific Islander 1.0000000
## Caucasian:Caucasian-Asian/Pacific Islander:Asian/Pacific Islander 0.9956464
## Hispanic / Latino:Caucasian-Asian/Pacific Islander:Asian/Pacific Islander 1.0000000
## African Americans:Hispanic / Latino-Asian/Pacific Islander:Asian/Pacific Islander 0.9999933
## Asian/Pacific Islander:Hispanic / Latino-Asian/Pacific Islander:Asian/Pacific Islander 1.0000000
## Caucasian:Hispanic / Latino-Asian/Pacific Islander:Asian/Pacific Islander 1.0000000
## Hispanic / Latino:Hispanic / Latino-Asian/Pacific Islander:Asian/Pacific Islander 1.0000000
## Hispanic / Latino:Asian/Pacific Islander-Caucasian:Asian/Pacific Islander 0.0000215
## African Americans:Caucasian-Caucasian:Asian/Pacific Islander 0.4604052
## Asian/Pacific Islander:Caucasian-Caucasian:Asian/Pacific Islander 1.0000000
## Caucasian:Caucasian-Caucasian:Asian/Pacific Islander 0.0493340
## Hispanic / Latino:Caucasian-Caucasian:Asian/Pacific Islander 1.0000000
## African Americans:Hispanic / Latino-Caucasian:Asian/Pacific Islander 0.0082099
## Asian/Pacific Islander:Hispanic / Latino-Caucasian:Asian/Pacific Islander 1.0000000
## Caucasian:Hispanic / Latino-Caucasian:Asian/Pacific Islander 1.0000000
## Hispanic / Latino:Hispanic / Latino-Caucasian:Asian/Pacific Islander 0.5353192
## African Americans:Caucasian-Hispanic / Latino:Asian/Pacific Islander 0.0000000
## Asian/Pacific Islander:Caucasian-Hispanic / Latino:Asian/Pacific Islander 0.0000000
## Caucasian:Caucasian-Hispanic / Latino:Asian/Pacific Islander 0.0000000
## Hispanic / Latino:Caucasian-Hispanic / Latino:Asian/Pacific Islander 0.0000000
## African Americans:Hispanic / Latino-Hispanic / Latino:Asian/Pacific Islander 0.0051976
## Asian/Pacific Islander:Hispanic / Latino-Hispanic / Latino:Asian/Pacific Islander 0.3335976
## Caucasian:Hispanic / Latino-Hispanic / Latino:Asian/Pacific Islander 0.0000000
## Hispanic / Latino:Hispanic / Latino-Hispanic / Latino:Asian/Pacific Islander 0.0000000
## Asian/Pacific Islander:Caucasian-African Americans:Caucasian 0.0241618
## Caucasian:Caucasian-African Americans:Caucasian 0.0000000
## Hispanic / Latino:Caucasian-African Americans:Caucasian 0.0000000
## African Americans:Hispanic / Latino-African Americans:Caucasian 0.0000000
## Asian/Pacific Islander:Hispanic / Latino-African Americans:Caucasian 0.9991725
## Caucasian:Hispanic / Latino-African Americans:Caucasian 0.0000000
## Hispanic / Latino:Hispanic / Latino-African Americans:Caucasian 1.0000000
## Caucasian:Caucasian-Asian/Pacific Islander:Caucasian 0.1373432
## Hispanic / Latino:Caucasian-Asian/Pacific Islander:Caucasian 1.0000000
## African Americans:Hispanic / Latino-Asian/Pacific Islander:Caucasian 0.0000189
## Asian/Pacific Islander:Hispanic / Latino-Asian/Pacific Islander:Caucasian 1.0000000
## Caucasian:Hispanic / Latino-Asian/Pacific Islander:Caucasian 1.0000000
## Hispanic / Latino:Hispanic / Latino-Asian/Pacific Islander:Caucasian 0.0379459
## Hispanic / Latino:Caucasian-Caucasian:Caucasian 0.0000000
## African Americans:Hispanic / Latino-Caucasian:Caucasian 0.0000000
## Asian/Pacific Islander:Hispanic / Latino-Caucasian:Caucasian 0.7984157
## Caucasian:Hispanic / Latino-Caucasian:Caucasian 0.0000000
## Hispanic / Latino:Hispanic / Latino-Caucasian:Caucasian 0.0000000
## African Americans:Hispanic / Latino-Hispanic / Latino:Caucasian 0.0000000
## Asian/Pacific Islander:Hispanic / Latino-Hispanic / Latino:Caucasian 1.0000000
## Caucasian:Hispanic / Latino-Hispanic / Latino:Caucasian 1.0000000
## Hispanic / Latino:Hispanic / Latino-Hispanic / Latino:Caucasian 0.0000000
## Asian/Pacific Islander:Hispanic / Latino-African Americans:Hispanic / Latino 0.8801408
## Caucasian:Hispanic / Latino-African Americans:Hispanic / Latino 0.0000000
## Hispanic / Latino:Hispanic / Latino-African Americans:Hispanic / Latino 0.0000000
## Caucasian:Hispanic / Latino-Asian/Pacific Islander:Hispanic / Latino 1.0000000
## Hispanic / Latino:Hispanic / Latino-Asian/Pacific Islander:Hispanic / Latino 0.9994654
## Hispanic / Latino:Hispanic / Latino-Caucasian:Hispanic / Latino 0.0000004
The post-hoc Tukey’s HSD test reveals specific racial group differences, notably that African Americans (as both subjects and officers) face significantly different arrest likelihoods compared to other groups, indicating disparities in arrest outcomes based on race.
ggplot(final_data, aes(x = subject_race, fill = officer_race)) +
geom_bar(position = "dodge") +
labs(title = "Distribution of Arrests by Subject Race and Officer Race",
x = "Subject Race", y = "Count of Arrests") +
theme_minimal() +
facet_wrap(~ arrest_made)
Null Hypothesis (H₀): There is no significant association between the gender of the officer and the race of the arrested subject.
Alternative Hypothesis (H₁): There is a significant association between the gender of the officer and the race of the arrested subject.
In this case, we examine if there’s a relationship between subject race and officer gender in terms of arrest outcomes, hence we conduct a Chi-Square Test.
chisq_result <- chisq.test(table(final_data$officer_sex, final_data$subject_race))
print(chisq_result)
##
## Pearson's Chi-squared test
##
## data: table(final_data$officer_sex, final_data$subject_race)
## X-squared = 27.712, df = 3, p-value = 4.174e-06
Since the p-values is very small (less than 0.05), we reject the null hypothesis.
Thus, there is a significant association between the gender of the officer and the race of the arrested subject. This suggests that the likelihood of arrest may vary depending on the officer’s gender in relation to the subject’s race.
ggplot(final_data, aes(x = officer_sex, fill = subject_race)) +
geom_bar(position = "dodge") +
labs(title = "Distribution of Arrests by Officer Gender and Subject Race",
x = "Officer Gender", y = "Count of Arrests", fill = "Subject Race") +
theme_minimal()
Overall analysis conducted helped us answer our SMART questions, and there is indication of a significant pattern in racial and demographic disparities of police stops in Chicago. The racial inequality in the probability of a stop and officer demographics is quite clear.
Racial Distribution: African American subjects experience the highest number of police stops, followed by Hispanic/Latino and Caucasian subjects, with Asian/Pacific Islanders experiencing the fewest stops. Similarly, On the other hand, Caucasian officers are involved in the most stops, followed by Hispanic/Latino and African American officers.
Age and Demographics: African American and Hispanic/Latino subjects predominantly fall within a 30-40 age range, whereas Asian/Pacific Islanders show a broader age spread. The officer age distribution aligns similarly across racial lines.
Violation Type: Filtering top 10 violations throughout the police stops, reveals that certain racial groups experience more frequent stops for quite few violations. Though we are not concluding a causality here because this relationship requires further analysis to clarify causative factors.
Gender Influence: Significant association between officer gender and subject race was found, indicating that the likelihood of arrest varies across these variables. Visualization further supported this finding.
Note: Due to the observational nature of the data, we cannot infer causality. There may be unmeasured co founders that influence these patterns, limiting our ability to draw definitive conclusions about bias.
[1] The Stanford Open Policing Project, openpolicing.stanford.edu.https://openpolicing.stanford.edu/data/
[2] Setting goals and developing specific, measurable, achievable, relevant, and time-bound objectives; https://www.samhsa.gov/sites/default/files/nc-smart-goals-fact-sheet.pdf
[3] Prasad Patil, Published in Towards Data Science (Mar 23,2018), Retrieved on Oct 31,2023; https://towardsdatascience.com/exploratory-data-analysis-8fc1cb20fd15
[4] What is exploratory data analysis?, IBM, Retrieved on Oct 31,2023; https://www.ibm.com/topics/exploratory-data-analysis
[5] Jain, A. (2024, October 19). What do you understand by EDA, Outliers, and Z Score? Medium. https://medium.com/@abhishekjainindore24/what-do-you-understand-by-eda-a634a734e762#:~:text=Exploratory%20Data%20Analysis%20(EDA)%20is,associated%20with%20Exploratory%20Data%20Analysis:
[6] Codecademy Team, Exploratory Data Analysis: Data Visualization, Retrieved on Oct 31,2023; https://www.codecademy.com/article/eda-data-visualization
[7] How do you formulate and test hypotheses based on your exploratory data analysis? (2023, August 25). https://www.linkedin.com/advice/1/how-do-you-formulate-test-hypotheses#:~:text=After%20exploratory%20data%20analysis%2C%20formulating,supporting%20or%20rejecting%20the%20hypothesis.